package com.medord.machine.core.annotition;


import org.springframework.stereotype.Service;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
* 用于注册状态处理器，没有注册的处理器不参与状态流程变化
* @return
* @author 孙丰佳
* @time 2021-12-14 17:09
*/
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Service
public @interface StateService {
    //流程名称，用于区分多流程的应用
    String flowName();

    //当前状态，处理器会从当前状态跃迁到目标状态
    String state();

    //当前状态名称，用于提示
    String stateDes();
}
